From: Mario Sanchez Prada Date: Tue, 27 Jun 2017 09:09:16 +0000 (+0100) Subject: workspace: Reset source IDs to zero after removing them X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~288 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=5221744d1dca6943385377a06fae7dd01639527b;p=gnome-shell.git workspace: Reset source IDs to zero after removing them There were some source IDs that were not being reset to zero when removing the associated sources, resulting on some critical errors being dumped when _realRecalculateWindowPositions() got called after that point, via _delayedWindowRepositioning(). --- diff --git a/js/ui/workspace.js b/js/ui/workspace.js index 11a65d676..bcde53d3f 100644 --- a/js/ui/workspace.js +++ b/js/ui/workspace.js @@ -1793,14 +1793,20 @@ const Workspace = new Lang.Class({ global.screen.disconnect(this._windowEnteredMonitorId); global.screen.disconnect(this._windowLeftMonitorId); - if (this._repositionWindowsId > 0) + if (this._repositionWindowsId > 0) { Mainloop.source_remove(this._repositionWindowsId); + this._repositionWindowsId = 0; + } - if (this._positionWindowsId > 0) + if (this._positionWindowsId > 0) { Meta.later_remove(this._positionWindowsId); + this._positionWindowsId = 0; + } - if (this._actualGeometryLater > 0) + if (this._actualGeometryLater > 0) { Meta.later_remove(this._actualGeometryLater); + this._actualGeometryLater = 0; + } this._windows = []; },